home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1998 November / Freeware November 1998.img / dist / fw_msql.idb / usr / freeware / msql / doc / HISTORY.msql.z / HISTORY.msql
Text File  |  1998-10-27  |  17KB  |  460 lines

  1. 7 Oct 1997   2.0.3
  2. -------------------------
  3.  
  4.     mSQL
  5.     ====
  6.  
  7.     o Fixed cpp problem on build (compilation failed on some systems)
  8.     o Fixed infinite loop problem when updating an index value using
  9.       the index as the condition
  10.     o Fixed core dump when using a sub condition in conjunction with
  11.       and index for row selection
  12.     o Replaced hard coded make with $(MAKE) in makegen macros
  13.  
  14.  
  15.  
  16.         Lite / W3-mSQL
  17.         ==============
  18.  
  19.     o Fixed several queries in msql-auth that did not include the
  20.       namespace to which they applied.
  21.  
  22.  
  23.     
  24.  
  25. 22 Sep 1997  2.0.2
  26. -------------------------
  27.  
  28.     mSQL
  29.     ====
  30.  
  31.     o Rolled in Bob Sum's patches
  32.     o Fixed translation of missing numerci values to NULL in msqlimport
  33.     o Fixed floating point rounding problems with money values
  34.     o Fixed denial of service attack problem with malformed protocols
  35.     o Fixed core dump if overflow buffers of a TEXT field extend 
  36.       beyond the mapped region during an update
  37.     o Fixed core dump when query string is longer than the debug buffer
  38.     o Fixed SNI security concerns regarding buffer overflows
  39.     o Added forward name lookup testing of hostnames during ACL checks
  40.     o Fixed handling of reals, money and time in DISTINCT queries
  41.     o Fixed server memory leak in certain mmap errors
  42.     o Fixed memory leak in API library for empty selects
  43.     o Fixed problems with updating and index where the index is in
  44.       use by the update query (i.e. in the where clause)
  45.     o Changed the memory syncher to force a remap rather than using
  46.       msync as Linux appears to not sync the mapped regions.
  47.     o Fixed an mmap region leak
  48.     o Fixed problem where connection could be reached due to errors
  49.       causing session to abort
  50.     o Fixed problem with TCP Port number in bcmp during host_lookup
  51.       (when host_lookup = false).  Thanks for the note Dirk.
  52.  
  53.     # Code branch for experimental development
  54.  
  55.  
  56.  
  57.   Jun 1997  2.0.1
  58. -------------------------
  59.  
  60.     mSQL
  61.     ====
  62.  
  63.     o Modified select loop range handling to avoid potential
  64.       infinite loop searching for active sockets
  65.     o Forced a mode of 0777 on the UNIX socket just in case
  66.     o Rolled in completed Win32 portability
  67.     o Fixed comparison of negative time/date values
  68.     o Fixed matching of null values to 0
  69.     o Fixed handling of null values in conditions other than
  70.       equals and not-equals
  71.     o Fixed value overwriting when updating the value of a TEXT
  72.       field that was originally set to NULL
  73.     o Fixed integrity of the overflow buffer on deletion of table
  74.       Rows containing NULL text fields.
  75.     o Fixed non-unique index error when updating a row using the
  76.       index for row selection
  77.     o Fixed wierd "field cannot be null" errors when inserting valid
  78.       data into not-null fields.
  79.     o Fixed CHAR and TEXT comparison problem where the in-table
  80.       value fills the entire field width and the literal value
  81.       is longer than the field width (sub string match problem).
  82.     o Fixed generation of values for _sysdate and _systime
  83.     o Fixed handling of system variable like _systime for queries
  84.       on empty tables
  85.     o Fixed problem in msqlDateOffset()
  86.     o Rolled in Bob Sum's *LIKE fixes.  Some of the NULL handling
  87.        code replaces the above mentioned NULL fixes.
  88.       
  89.     
  90.  
  91.  
  92.  
  93.     Lite / W3-mSQL
  94.     ==============
  95.  
  96.     o Fixed definitions of HAVE_DYNAMIC
  97.     o Added performance optimisations
  98.     o Fixed strseg() handling of strings shorter than the specified
  99.       substring.
  100.  
  101.  
  102.  
  103.     Misc
  104.     ====
  105.  
  106.     o Updated doco for 2.0.1
  107.     o RTF version of documentation replaced by HTML.  The
  108.       translation is still very rough and the PostScript version
  109.       should be used where possible.
  110.     o Added testing for sys/timeb.h to the configure script
  111.  
  112.  
  113.  
  114.  
  115. 8 Jun 1997  2.0 Release
  116. -------------------------
  117.  
  118.     mSQL
  119.     ====
  120.  
  121.     o Fixed minor read overflow in AVL tree initialisation
  122.     o Further optimised index selection during candidate setup
  123.     o Fixed memory leak in sub-condition handling
  124.     o Fixed bug in handling of reversed ident conds in inner loop 
  125.       condition when using an index for the inner loop of a join
  126.     o Fixed unique index handling problem
  127.     o Fixed bug in comparison with some system variables
  128.     o Fixed pre/post increment problem of sequences during query
  129.       execution
  130.     o Fixed handling of TIME and DATE fields in msqldump
  131.     o Fixed core dump where and index fields is compared to an IDENT
  132.       values who's value is NULL during a join.
  133.     o Fixed core dump in certain situations if the value passed to
  134.       an index based condition is longer than the field length.
  135.     o Fixed bug in the sorting of real values
  136.     o Fixed obscure bug in resetting an index value to the same value
  137.       if that index was used for the lookup and the index node
  138.       contained duplicate values
  139.     o Optimised index updates so that indices are only modified if
  140.       the value has actually changed
  141.     o Made cache invalidation consistent
  142.     o Added "copy" and "move" to msqladmin
  143.     o Added section based name spaces to the config routines
  144.     o Added further configuration output to "msqladmin version"
  145.     o Rewrote msqlimport from scratch
  146.     o Added date / time format routines to the API library
  147.  
  148.  
  149.  
  150.     Lite / W3-mSQL
  151.     ==============
  152.  
  153.     o Added .shtml as a valid HTML suffix for W3-mSQL processed files.
  154.     o Added @variable for accessing global symbols from a local
  155.       namespace (e.g. using globals from within a function)
  156.     o Fixed core dump when adding an empty function to a lite library
  157.     o Fixed double contraction of \\ escapes
  158.  
  159.  
  160.  
  161.  
  162. 8 May 1997  2.0 Beta 7
  163. ----------------------
  164.  
  165.     mSQL
  166.     ====
  167.  
  168.     o Added test for "make target" before performing a build
  169.     o Fixed unique index handling if updating the index value with
  170.       itself
  171.     o Fixed access control for UPDATE queries
  172.     o Fixed core dump if _rowid > numRows given in a select
  173.     o Fixed problem with incorrect precision in update of real fields
  174.     o Forced debug initialisation messages to stderr
  175.  
  176.  
  177.     Lite / W3-mSQL
  178.     ==============
  179.  
  180.     o Fixed handling of multi-value web form data (i.e. multi-select
  181.       lists) during the casting of the values to an array.
  182.     o Upgraded limits in W3-mSQL passed variable lengths 
  183.     o Fixed initialisation of symbol table prior to checking W3-Auth
  184.       based access control
  185.  
  186.  
  187. 11 April 1997  2.0 Beta 6
  188. -------------------------
  189.  
  190.     mSQL
  191.     ====
  192.  
  193.     o fixed rand() srand() portability macros
  194.     o added strptime check to autoconf script
  195.     o added strptime function to lib mSQL if needed
  196.     o completed Win32 porting of client API and client apps
  197.     o completed Win32 porting of server although indexing still
  198.       needs some debugging.
  199.     o fixed per field cache pointer during tmp table creation (core
  200.       dump when ordering the result of a join with a TEXT field)
  201.     o fixed handling of 8 bit char sets in regexp matching
  202.     o fixed ident handling in joins (particularly in self joins)
  203.       when multiple idents used in the comparison clause
  204.     o fixed timestamp bug where timestamps were reset in a condition
  205.     o fixed NOT NULL testing for NULL fields
  206.     o fixed NOT NULL testing for NULL indices
  207.     o fixed resetting overflow table mapping length to 0 when
  208.       dropping a table cache entry in loadTableDef()
  209.     o fixed potential leak of mapped region in initTable()
  210.     o updated client library to use MSQL_DEBUG not MINERVA_DEBUG
  211.     o updated libmsql to use stderr for debugging
  212.     o added short-circuits for condition testing (i.e. bail as soon
  213.       as we can tell the result of and AND or an OR etc)
  214.     o fixed leak of overflow buffers when deleting rows containing
  215.       TEXT fields
  216.     o added soundex based matching using the SLIKE operator
  217.     o fixed handling on blank date fields (ie. '')
  218.     o fixed LIMIT handling
  219.  
  220.  
  221.     Lite / W3-mSQL
  222.     ==============
  223.  
  224.     o More performance upgrades
  225.         - Symbol names no-longer malloced
  226.         - Symbol values < 10 bytes long no longer malloced
  227.         - Results show 300% performance increase in virtual
  228.             machine operating speed
  229.     o Fixed string length mis-match between locally created and
  230.       passed variable values (e.g. html form data etc)
  231.     o Forced flushing of output after an echo() as a call to
  232.       system() following a non-flushed echo() could cause the
  233.       output order to skew
  234.  
  235.  
  236.  
  237. 20  March 1997     2.0 Beta 5
  238. --------------------------
  239.  
  240.     mSQL
  241.     ====
  242.  
  243.     o Rewrote regression test suite to obtain better code coverage
  244.     o Added real value precision handling to solve real number
  245.       rounding errors.  The desired precision is now stored with
  246.       the value in the database table.
  247.     o Added code to translate system variables (eg _rowid) into
  248.       "real" table fields during creation of a result table.  This
  249.       allows the sysvar value from the original table to be carried
  250.       through a DISTINCT or an ORDER rather than it being incorrectly
  251.       generated from the result table.
  252.     o Added ability to order a result on the value of a system
  253.       variable
  254.     o Added more system diagnostics for low-level errors
  255.     o Added more file ownership testing (for those that chown the
  256.       data file and don't get it correct)
  257.     o Added /dev/tty test in makegen macros.  I though expecting 
  258.       /dev/tty to exists was fair but apparantly not so on IRIX
  259.       5.3.
  260.     o Added README.sco for build details on SCO
  261.     o Added msqlGetSequenceInfo() to API and server
  262.     o Added support for showing sequence structure to relshow
  263.     o Added support for dumping current sequence status to msqldump
  264.     o Added support for UINT data type
  265.     o Added support for DATE data type
  266.     o Added support for TIME data type
  267.     o Added support for MONEY data type
  268.     o Added mmap region syncing for data files, overflow files and
  269.       the mapped regions of the AVL index files.  Frequency of sync's 
  270.       is configured in msql.conf.
  271.     o Added support for sequences in relshow (sequence creation at
  272.       the current sequence value)
  273.     o Added msqlGetSequenceInfo() API function
  274.     o Added _systime system variable
  275.     o Added mSQL time and date functions to the API library.  These
  276.       allow for conversion from the text representations used by
  277.       mSQL into a valid UNIX time_t value.
  278.     o _sysdate system variable now returns a date type value of the
  279.       current data on the server machine (not the UNIX time value
  280.       as previously returned)
  281.     o Rows are now padded to an 8 byte boundary for memory alignment
  282.       reasons (mmap() access to the row headers structures on Alpha)
  283.     o Row header timestamp now time_t rather than int for machines
  284.       that use long time values (e.g. the Alpha)
  285.     o Fixed memory leak in yyprev symbol handling
  286.     o Fixed wild free in lexer symbol handling (core dump)
  287.     o Fixed timestamp overwrite problem for the Alpha
  288.     o Fixed relshow core dump for invalid index name
  289.     o Fixed core dump in AVL code when accessing an unaligned real 
  290.       (i.e. a double) value in the tree node
  291.     o Fixed bad handling of numeric index types by moving the field
  292.       value auto-casting earlier in the control flow
  293.     o Fixed AVL Lookup problem for indices comprised of real values
  294.     o Fixed compound index handling bug (key could be incorrectly
  295.         formatted on lookup resulting in no results).
  296.     o Fixed problem with ident comparisons on single table selects
  297.     o Fixed problem with ident to sysvar comparisons on single table 
  298.       selects (e.g. select * from foo where f1 = _rowid)
  299.     o Fixed wild free problem for ident values in join code (core dump)
  300.     o Fixed memory over-read on some TEXT field operations
  301.     o Fixed data hole free list handling
  302.     o Fixed multiple increment of sequence value (i.e. select _seq
  303.         from foo would increment the seq for each row)
  304.     o Fixed multiple increment of seq in conditions (i.e.
  305.         "select _seq from foo where id > _seq" would increment
  306.         the sequence twice (once for each call to getSysVar() )
  307.     o Fixed handling of system variables in join results
  308.     o Fixed 8 byte alignment problems in the AVL tree code.  The
  309.         entire server is now 64bit clean and passes the
  310.         new regression test on an Alpha under OSF/1
  311.  
  312.  
  313.  
  314.     Lite / W3-mSQL
  315.     ==============
  316.  
  317.     o Rewrote all symbol table handling code to use a 64 way
  318.       hash table for symbol lookups.  Also added a short-cut for
  319.       symbol searches.  General performance increase in every aspect
  320.       of the language results from this modification.
  321.     o Added support for non-local authentication databases via the
  322.       msql.conf file.
  323.     o Added support for HTML comments and other non-Lite tags that
  324.       start with <!
  325.     o Adding hooks for the mSQL time and date routines to mod_std
  326.     o Added getTzOffset() to mod_std for hacking time values
  327.     o Added toksplit() to mod_std
  328.     o Added literal symbol re-use code
  329.     o Fixed auto-casting problems with the new uint type
  330.     o Fixed auto-base-conversion (i.e. octal & hex).  Conversions
  331.       now only performed on literals, not on variables during a cast
  332.       or an auto-cast
  333.     o Fixed off-by-one error in count operator for text strings
  334.     o Fixed regression test results to reflect the current test
  335.       output
  336.     o Fixed space handling in urlEncode()
  337.     o Fixed problem with string truncation in sub()
  338.     o Fixed problem with handling some C styled comments
  339.     o Fixed core dump when trying to cast an array to a scalar type
  340.     o Fixed off by one error in array literal element length
  341.     o Fixed handling of array indexing in text expansion (e.g. 
  342.       in echo() strings) when array indexed by a variable value
  343.     o Fixed auto casting for int and uint in printf formats
  344.  
  345.  
  346.  
  347.  
  348.     Misc
  349.     ====
  350.  
  351.     o Fixed a couple of bugs in the time library for date/time handling
  352.     o Added errno.h to the headers searched in setup when looking for
  353.       sys_errlist (for NetBSD 1.2)
  354.     o Added stdlib.h to the headers searched in setup when looking for
  355.       ssize_t (for Irix 6.2)
  356.     o Started total re-working of the documentation kit.
  357.     o Code has been "linted" within and inch of its life (using
  358.       gcc -Wall)
  359.  
  360.  
  361.  
  362. 1  February 1997     2.0 Beta 4
  363. -----------------------------------
  364.  
  365.     Lite / W3-mSQL
  366.     ==============
  367.  
  368.     o Added support for Multi-Select form data to W3-mSQL
  369.     o Added typeof() function to Lite standard module
  370.     o Fixed bug in expandText() handling mis-defined symbols
  371.     o Added work-around for the gnu getopt() library
  372.     o Added work-around for the gnu atoi() function
  373.     o Added 'uint' type handling and "%u" to printf()
  374.     o Fixed problem with fuction call arg count on some machines
  375.     o Fixed last character match problem in tr()
  376.     o Fixed a few doco bugs in the mSQL module doc's
  377.     o Fixed up type checking during a cast
  378.     o Fixed a problem if the first element of an array is not a CHAR val
  379.     o Fixed urlEncode problem for the + character
  380.  
  381.  
  382.     mSQL
  383.     ====
  384.  
  385.     o Fixed token destruction in error reporting from the parser
  386.     o Fixed documentation example for sequence creation
  387.     o Fixed core dump in mSQL monitor on overly large error results
  388.     o Fixed inaccurate initialisation of ident segments in msqlCreateIdent
  389.     o Added support for MSQL_CONF_FILE environment variable
  390.     o Fixed looping problem in wild-card delete
  391.     o Fixed some _more_ doco bugs
  392.     o Fixed problem with comparison of TEXT fields with NULL
  393.     o Fixed problem with the matchVarChar() function when comparing
  394.       values with TEXT fields
  395.     o Fixed bug in LIKE and CLIKE for matching multiple % wildcards
  396.       to an empty string
  397.     o Fixed a possible problem with the static size of the connection
  398.       array
  399.  
  400.  
  401.  
  402. 14  January 1997    2.0 Beta 3
  403. -----------------------------------
  404.  
  405.     o Fixed bugs in table join logic
  406.     o Fixed bug that allowed an update to set a non-unique value
  407.       for a unique index
  408.     o Completed dynamic loading of module object code in Lite / W3-mSQL
  409.     o Fixed some documentation errors in the HTML manual
  410.     o Fixed non-flushed output in user prompts from msqladmin and msql 
  411.     o Fixed problem with fields being inserted with the NULL flag set
  412.     o Added a 0 exit val to msqldump
  413.     o Fixed some API function prototypes 
  414.     o Added strdup() to the malloc test code (although we don't
  415.       use the malloc library anymore for in-house code testing)
  416.     o Fixed memory leaks in parser, msqlServerDelete, QUIT processing,
  417.       join condition lists, and join ident fields.
  418.     o Wrote the mod_graph dynamic loaded graphing module for Lite &
  419.       W3-mSQL.
  420.     o Added optional W3-auth security.  The file .w3-auth must now
  421.       be created in the directory containing the requested file to
  422.       enable W3-auth access control.
  423.  
  424.  
  425.  
  426.  
  427. 6  January 1997        2.0 Beta 2
  428. -----------------------------------
  429.     o Fixed problem with deletion using an index for row selection
  430.       (reshuffle of dup values in tree node caused getNext to skip
  431.        a valid entry)
  432.     o Fixed bug in bulk index creation where it was including
  433.       non-active rows in the newly created index.
  434.     o Added strncasecmp() for SVR4 people (so they can dodge the BSD lib)
  435.     o Fixed bug in the AVL node swapping code wrt dup node lists.
  436.     o Fixed core dump bug when DISTINCT used with an empty result
  437.       table.
  438.     o Fixed bug in the updating of CHAR fields.
  439.     o Increased listen queue for UNIX socket to 128
  440.     o Fixed bug in updateValues() where by a full field width char
  441.       value would trash the active flag of the next field (i.e. NULL
  442.       termination of the string).
  443.     o Fixed param count test in Lite function calling.
  444.     o Increased Lite VM performance by up to 20% by caching stack 
  445.       frames and other reuseable items.
  446.     o mSQL Server performance increases
  447.       - Removed some more malloc & bzero overhead 
  448.       - Added speedup for boxes without hardware multiply (like
  449.         lots of the early SPARCs).  
  450.       - The above modifications produced a 20% faster "killer"
  451.         result on a SPARC without hardware math.
  452.     o Added support for symbolic Macros in modules
  453.     o Started support for dynamic loading shared modules
  454.  
  455.  
  456.  
  457. 16 December 1996    2.0 Beta 1
  458. -----------------------------------
  459.     o Initial public beta release of the 2.0 code base.
  460.